diff options
| author | real-zephex <[email protected]> | 2024-04-10 01:19:20 +0530 |
|---|---|---|
| committer | real-zephex <[email protected]> | 2024-04-10 01:19:20 +0530 |
| commit | e5935c15af0375240fa7c711dc99101fa48048be (patch) | |
| tree | e1807c8552c25b0f2f10d55dce59725606bb4b66 /src/app/anime/[id]/[...animeId] | |
| parent | prolly the last update to dramalama. (diff) | |
| download | dramalama-e5935c15af0375240fa7c711dc99101fa48048be.tar.xz dramalama-e5935c15af0375240fa7c711dc99101fa48048be.zip | |
UI changes
Diffstat (limited to 'src/app/anime/[id]/[...animeId]')
| -rw-r--r-- | src/app/anime/[id]/[...animeId]/page.jsx | 92 | ||||
| -rw-r--r-- | src/app/anime/[id]/[...animeId]/video.module.css | 70 |
2 files changed, 0 insertions, 162 deletions
diff --git a/src/app/anime/[id]/[...animeId]/page.jsx b/src/app/anime/[id]/[...animeId]/page.jsx deleted file mode 100644 index f5505e5..0000000 --- a/src/app/anime/[id]/[...animeId]/page.jsx +++ /dev/null @@ -1,92 +0,0 @@ -import { MediaPlayer, MediaProvider } from "@vidstack/react"; -import "@vidstack/react/player/styles/base.css"; -import "@vidstack/react/player/styles/plyr/theme.css"; -import { - PlyrLayout, - plyrLayoutIcons, -} from "@vidstack/react/player/layouts/plyr"; -import styles from "./video.module.css"; -import { redirect } from "next/navigation"; -import Link from "next/link"; - -export const runtime = 'edge'; - -export default async function Video({ params }) { - let link; - const id = params.animeId[0]; - const series = params.animeId[1]; - - // Getting the episode number and the anime name. Kindly ignore! - const words = id.split("-"); - const last_two = words.slice(-2).join(" "); - const remainingWords = words.slice(0, -2).join(" "); - - const data = await getVideoLink(id); - const animedata = await getAnimeInfo(series); - - if (data.message) { - redirect("/404"); - } - - try { - link = data.sources[4].url; - } catch (error) { - try { - link = data.sources[3].url; - } catch (error) { - console.log("Episode not found."); - redirect("/404"); - } - } - - return ( - <div className={styles.VideoMain}> - <div className={styles.VideoContainer}> - <p style={{ textAlign: "center", color: "white" }}> - {last_two} - {remainingWords} - </p> - <div className={styles.Video}> - <MediaPlayer - title={words} - src={link} - aspectRatio="16/9" - load="eager" - className={styles.VideoPlayer} - > - <MediaProvider /> - <PlyrLayout icons={plyrLayoutIcons} /> - </MediaPlayer> - <div className={styles.EpisodesButtons}> - {animedata && - animedata.episodes.map((item, index) => ( - // <p key={index}>Hello World</p> - <Link - href={`/anime/watch/${item.id}/${series}`} - key={index} - > - <button>{item.number}</button> - </Link> - ))} - </div> - </div> - </div> - </div> - ); -} - -async function getVideoLink(id) { - const res = await fetch( - "https://consumet-api-di2e.onrender.com/anime/gogoanime/watch/" + id - ); - const data = res.json(); - return data; -} - -async function getAnimeInfo(anime_id) { - const res = await fetch( - "https://anime-sensei-api.vercel.app/anime/gogoanime/info/" + anime_id, - { next: { revalidate: 7200 } } - ); - const data = await res.json(); - return data; -} diff --git a/src/app/anime/[id]/[...animeId]/video.module.css b/src/app/anime/[id]/[...animeId]/video.module.css deleted file mode 100644 index 0214e60..0000000 --- a/src/app/anime/[id]/[...animeId]/video.module.css +++ /dev/null @@ -1,70 +0,0 @@ -.Video { - display: flex; - justify-content: center; - align-items: center; -} - -.VideoPlayer { - border-radius: 10px; - width: 70%; - height: auto; -} - -.EpisodesButtons { - display: flex; - flex-direction: column; - margin-left: 10px; - height: 500px; - overflow-y: auto; - width: 100px; - scrollbar-width: thin; -} - -.EpisodesButtons button { - width: 70px; - margin: 5px; - outline: none; - border: none; - padding: 5px; - font-family: "Quicksand"; - font-size: 14px; - border-radius: 5px; - cursor: pointer; - color: white; - background-color: #3d3d3d; - transition: background-color 0.2s linear; -} - -.EpisodesButtons button:hover { - background-color: #1f1f1f; - transition: background-color 0.2s linear -} - -@media screen and (max-width: 768px) { - - .VideoMain { - max-width: 99%; - } - - .Video { - display: block; - } - - .VideoPlayer { - width: 100%; - } - - .EpisodesButtons { - display: flex; - flex-direction: row; - height: auto; - width: auto; - margin-top: 10px; - margin-left: 0px; - overflow-y: auto; - } - - .EpisodesButtons button { - width: 50px; - } -}
\ No newline at end of file |